]> dgit.raspbian.org Git - gnome-shell.git/commit
panel: Rewrite the app menu to use the new "sync" pattern
authorJasper St. Pierre <jstpierre@mecheye.net>
Tue, 13 Aug 2013 11:41:44 +0000 (07:41 -0400)
committerJasper St. Pierre <jstpierre@mecheye.net>
Tue, 13 Aug 2013 15:22:04 +0000 (11:22 -0400)
commit7563e0474319ca3ff05072d39b22b6ed9287e68e
treef5bc11e79037d7087319f30019a1acff7ac348de
parent33e51cc38b51c0193c4ce8944576da8330127018
panel: Rewrite the app menu to use the new "sync" pattern

The existing app menu was a kludge of legacy code that tried to manage
a bunch of state, and had a number of issues:

 * It didn't properly manage visibility when combined with multiple
   apps and the overview.

 * It didn't properly manage reactivity when tabbing away from a busy
   app to another app.

 * It didn't properly disconnect signals when going from one app
   to nothing.

and countless others. Rewrite it to use the new "sync" code pattern,
where we centralize all state management and do transitions from that,
rather than strange and quirky control flow.

https://bugzilla.gnome.org/show_bug.cgi?id=705898
js/ui/panel.js